                              =======                            
                              README
                              ======

                         QLogic Multiple Boot Agent (MBA)
                              [PXE, BOOTP,iSCSI Boot, FCoE Boot ]

                      Copyright (c) 2015 QLogic Corporation
                                 All rights reserved.

******************************** IMPORTANT NOTE *******************************
*                                                                             *
* 1. All of the released binary images except evbase.lom have standard ROM    *
* header which has embedded Vendor ID/Device ID.  BIOS only  loads MBA image  *
* if Vendor ID/Device ID matches the Vendor ID/Device ID of the controller.   *
* The default Vendor ID/Device ID in the released images are for BCM57710     *
* controller (0x14e4/0x164e). If this image is programmed to NIC without      *
* using Broadcom's flashing utilities such as NVM command in ediag.exe        *
* then the provided romhdr.exe must be used to update ROM header with the     *
* Vendor ID/Device to match with intended controller.                         *
* Similarly, in LOM application where MBA image is integrated to BIOS, it's   *
* mandatory to use romhdr.exe to update image's ROM header to match with      *
* intended target controller's Vendor ID/Device ID.                           *
*                                                                             *
* 2. UNDI driver is not fully supported in EFI IA-64 environment.  It might   *
*    not work correctly some platforms/environments.                          *
*                                                                             *
* 3. The first bootstrap for BOOTP download has to be within the range of     *
*    640K - 32K - sizeof(UNDI)+sizeof(base code).  This is normally about     *
*    520K.  The first phase of BOOTP bootstrap can download the rest of       *
*    image by interfacing with PXE API which is still in conventional         *
*    memory.
*                                                                             *
* 4. The following steps are necessary to operate the MBA properly:           *
*     _ Use ediag.exe -b10eng (to program the l2_fwvXX.XX)                    *
*     _ At the ediag prompt type: nvm upgrade -l2 l2_fwvXX.XX                 *
*******************************************************************************

Introduction
============

This file describes the QLogic Multiple Agent for QLogic's BCM57x1x 10Gbps 
Ethernet Network Interface Controller.  QLogic Multiple Boot Agent (MBA) 
supports PXE,BOOTP,iSCSI Boot, and FCoE Boot. Three sets of binary images are
released in the following directories:

* Legacy : These images comply to legacy BIOS.

* Fw30 : These images comply to PCI F/W 3.0 specification.  They can run fine in 
both legacy BIOS and PCI F/W 3.0 BIOS.

* Fw30_clp : These images comply to PCI F/W 3.0 specification and they also have 
CLP support.  See clp.pdf for details.

Multiple Agent driver is released in the following binaries:

evpxe.lom:  This is a monolithic image that consists of both 
            base-code (BC) and UNDI code. This image should be used 
            on the LOM application. This image supports PXE, BOOTP, and
            iSCSI Boot. An additional firmware image is required for iSCSI Boot.

evpxe.nic:  This is a monolithic image that consists of both 
            base-code (BC) and UNDI code. This image should be used 
            on the NIC application.
            However, an adapter programmed with this image is still 
            operational in the motherboard's BIOS with built-in BC; 
            the BC on the adapter will be used.  This image supports PXE,
            BOOTP, and iSCSI Boot. An additional firmware image is required
            for iSCSI Boot.

evuundi.lom: This is an UNDI image that consists of UNDI code only
             (split implementation) which is intended for LOM application.
             This module should be programmed on the motherboard's BIOS.

evuundi.nic: This is an UNDI image that consists of UNDI code only 
             (split implementation) which is intended for NIC 
             application.

evbase.lom: This is a BC image that consists of BC code only 
            (split implementation) which is intended for LOM application. 
            This module should be programmed on the motherboard's BIOS.

l2_fwvXX.XX: This file contains L2 FW which is required to program on the 
             NVRAM.

romhdr.exe : This tool can be used to customize PXE image for different
             ASIC-based LOM applications.  It basically modifies the
             Vendor ID/Device ID in the ROM header of the image and
             then recalculates the checksum. 

